<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 一、symbol ： 基本数据类型 ； 独一无二的值；
        // 唯一id值； 唯一标识符 ；
        // 1.symbol的创建 
        // symbol一旦生成 就是一个唯一的值；
        // let s1 = Symbol("key1");
        // console.log(s1);
        // console.log(typeof s1);
        // let s2 = Symbol("key2");

        // console.log(s1===s2);

        // 2.模拟私有成员；
    //     var person = {
    //         name:"张安",
    //         age:20,
    //         [Symbol("weight")]:"90kg"  // 私有属性 
    //     }

    //     console.log(person);
    //     person.name;  // 外部调用 
    //     person.age; // 外部调用 
    //    console.log(  person[Symbol("weight")]);

        // 3.特别的需求

        // 键值 是什么 无所谓 ，但是 键值要不相同 ；
        // var cate = {
        //     person:Symbol(),
        //     animal:Symbol()
        // }

        // function getCate(type){
        //     if(type==cate.person){
        //         console.log("是人类")
        //     }else{
        //         console.log("是动物")
        //     }
        // }

        // getCate(cate.person);


        // 二 、bigInt  ： 大整型 处理大整数的；
        // js 在 2**53次方之后 计算就不准确了 ；

        // var num = 2**54;
        // console.log(num);
        // console.log(num+1);
        // console.log(num + 2);
        // console.log(num +3);


        // bigInt创建 
        // bigInt 只能和 bigInt类型做运算；
        // 方式一：
        // var num = 2**54;
        // var bnum = BigInt(num);
        // console.log(bnum);
        // // console.log(typeof bnum);
        // console.log(bnum + BigInt( 1) );
        // console.log(bnum + BigInt( 2) );
        // console.log(bnum + BigInt( 3) );
        // console.log(bnum + BigInt( 4) );


        // 方式2 ： 直接在number后加上 n
        // var num = 10n;
        // console.log(num);

        // var num = 2n**54n;
        // console.log(num);
        // console.log(num + 1n);
        // console.log(num + 2n);
        // console.log(num + 3n);

    </script>
</body>
</html>